这些修饰符用于配置 SF Symbols(系统符号图标)的显示样式和动画效果,常用于 <Image systemName="...">
组件。
symbolRenderingMode
设置符号图像的 渲染模式。
"monochrome"
:单色模式,使用当前前景色绘制"hierarchical"
:层次渲染,根据不同图层设置不透明度(适合语义着色)"multicolor"
:使用符号内置颜色"palette"
:分层渲染,可自定义每一层的颜色样式(需搭配 foregroundStyle
)foregroundStyle
设置符号或前景元素的颜色样式。
"monochrome"
模式下使用单个颜色或渐变;"palette"
模式下使用 { primary, secondary, tertiary }
对象指定多层样式;tertiary
可选,仅在符号有三层图层时有效。symbolVariant
为符号添加特定的 视觉变体。
"none"
:无变体,原始符号样式"fill"
:填充样式"circle"
:包裹在圆形轮廓中"square"
:包裹在方形轮廓中"rectangle"
:包裹在矩形轮廓中"slash"
:斜杠样式,表示禁止/关闭等状态symbolEffect
为符号添加 动画效果,支持静态应用或绑定数值以触发动画。
每次 isLiked
状态变化时,图标会执行 bounce 动画。
类别 | 动效关键字 |
---|---|
弹跳 Bounce | bounce , bounceByLayer , bounceDown , bounceUp , bounceWholeSymbol |
呼吸 Breathe | breathe , breatheByLayer , breathePlain , breathePulse , breatheWholeSymbol |
脉冲 Pulse | pulse , pulseByLayer , pulseWholeSymbol |
旋转 Rotate | rotate , rotateByLayer , rotateClockwise , rotateCounterClockwise , rotateWholeSymbol |
颜色变化 VariableColor | variableColor , variableColorIterative , variableColorDimInactiveLayers , variableColorHideInactiveLayers , variableColorCumulative |
摇晃 Wiggle | wiggle , wiggleLeft , wiggleRight , wiggleUp , wiggleDown , wiggleForward , wiggleBackward , wiggleByLayer , wiggleWholeSymbol , wiggleClockwise , wiggleCounterClockwise |
上述示例中:
indigo
颜色;isNotified
变化时,符号执行 breathePulse
动画。修饰符 | 说明 |
---|---|
symbolRenderingMode |
设置符号图标的渲染模式(单色、多色、层次、调色板) |
foregroundStyle |
设置符号的颜色风格,可支持多图层配色 |
symbolVariant |
添加符号样式变体,如填充、圆形、斜杠等 |
symbolEffect |
添加符号动画,可静态或绑定值驱动 |